package cn.gcBlock.po;


//先天下为公，后商华两茂

/**
 * 拒绝垄断： 每年分红日，持有币子最多的人，分红后强制以股份价值回收。不接受回收不予分红。回收的币必须以股份价值强制再发行，采用限购策略，保证公平公众。
 * 币子锁定后将失去网络流通的能力。
 * 公司持有锁定的币子同样适用于第一条，分红后必须以市场价值再次发行等值新币种。
 * 币子锁定后可以将红利价值实体化，解决网络瘫痪或网络货币安全失信后
 * 一个币子发送到两个未同步的网络怎么办？
 * 当有不一致的数据询问其他服务器，百分之51承认，同化
 */

import com.alibaba.fastjson.annotation.JSONField;
import com.alibaba.fastjson.serializer.SerializerFeature;
import lombok.Data;

import javax.persistence.MappedSuperclass;
import java.io.Serializable;

/**
 * 方法
 */
@Data
@MappedSuperclass
public class NodeEntity implements Serializable {
    @JSONField(serialzeFeatures= {SerializerFeature.WriteMapNullValue, SerializerFeature.WriteNullStringAsEmpty},ordinal = 1)
    String blockName;
    @JSONField(serialzeFeatures= {SerializerFeature.WriteMapNullValue, SerializerFeature.WriteNullStringAsEmpty},ordinal = 2)
    String symbol;
    @JSONField(serialzeFeatures= {SerializerFeature.WriteMapNullValue, SerializerFeature.WriteNullStringAsEmpty},ordinal = 3)
    String toPublicKey;
    @JSONField(serialzeFeatures= {SerializerFeature.WriteMapNullValue, SerializerFeature.WriteNullStringAsEmpty},ordinal = 4)
    String remark;
    @JSONField(serialzeFeatures= {SerializerFeature.WriteMapNullValue, SerializerFeature.WriteNullStringAsEmpty},ordinal = 5)
    String publicKey;
    @JSONField(serialzeFeatures= {SerializerFeature.WriteMapNullValue, SerializerFeature.WriteNullStringAsEmpty},ordinal = 6)
    String type;
    @JSONField(serialzeFeatures= {SerializerFeature.WriteMapNullValue, SerializerFeature.WriteNullStringAsEmpty},ordinal = 7)
    double coin;
    @JSONField(serialzeFeatures= {SerializerFeature.WriteMapNullValue, SerializerFeature.WriteNullStringAsEmpty},ordinal = 8)
    long timestamp;
}
